#ifndef __TEST_FACTORYTEST_H__
#define __TEST_FACTORYTEST_H__

#include <loki/Factory.h>

enum
{
	PRODUCT_ID_TEST,
};

class CProductTest
{
public:
	CProductTest(int nParam):m_a(nParam){}
	~CProductTest(){}

	void Test()
	{
		m_a = 100;
	}
	int m_a;

	static CProductTest * Create(int nParam);
};

typedef Loki::Factory< CProductTest, int, Loki::Seq< int > > CFactoryTest;
typedef Loki::SingletonHolder< CFactoryTest > CFactoryTestS;

static const bool bOK = CFactoryTestS::Instance().Register(PRODUCT_ID_TEST, CProductTest::Create);

#endif //__TEST_FACTORYTEST_H__